Require explicit is_strict declarations for ScalarFnVTable - #9007
Require explicit is_strict declarations for ScalarFnVTable#9007connortsui20 wants to merge 1 commit into
is_strict declarations for ScalarFnVTable#9007Conversation
Removes the default `is_strict` implementation on `ScalarFnVTable` so every scalar function must declare its strictness deliberately instead of silently inheriting the conservative `false`. Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
is_strict declarations for ScalarFnVTable
Merging this PR will regress 1 benchmark
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | Simulation | true_count_vortex_buffer[1024] |
773.1 ns | 860.6 ns | -10.17% |
| ⚡ | Simulation | copy_nullable[65536] |
1,033.1 µs | 568.1 µs | +81.85% |
| ⚡ | Simulation | copy_non_nullable[65536] |
1,111.6 µs | 799.7 µs | +39.01% |
| ⚡ | Simulation | canonicalize[1024, 8] |
19.7 µs | 17.7 µs | +11.36% |
| ⚡ | Simulation | canonicalize[256, 8] |
19.7 µs | 17.8 µs | +11.01% |
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing agent/require-explicit-strictness (04ad255) with agent/rename-scalar-fn-strictness (60b7f57)2
Footnotes
-
46 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports. ↩
-
No successful run was found on
agent/rename-scalar-fn-strictness(a3494a5) during the generation of this report, so c7ea501 was used instead as the comparison base. There might be some changes unrelated to this pull request in this report. ↩
Removes the default
is_strictimplementation onScalarFnVTableso every scalar function must declare its strictness deliberately instead of silently inheriting the conservativefalse. Follow-up to #8930, where the default was retained to keep the rename mechanical.